package 泛型的上界.语法;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 姚东名
 * Date: 2024-06-25
 * Time: 14:01
 */
/*
泛型的上界
在定义的时候，有时候需要对传入的类型变量做一定的约束，可以通过类型边界来约束。

7.1语法
class泛型类名称<类型形参 extends 类型边界> {
    ...
}

只接受Number的子类型作为E的类型实参
MyArray<Integer> l1; //正常，因为Integer是Number的子类型
MyArray<String> l2; //编译报错，因为String不是Number的子类型

了解：没有指定类型边界E ，可以视为E extends Object

7.3 复杂示例
public class MyArray<E extends Comparable<E>> {
    ...
}
E必须是实现了Comparable接口的
 */


class MyArray<T extends Number> {

}
public class Test {
    public static void main(String[] args) {
        MyArray<Integer> myArray = new MyArray();

        //MyArray<String> myArray1 = new MyArray<String>();

    }
}
